package main

import (
	"fmt"
	"net"
	znet "zinx/Znet"
)

func main() {
	/*
		模拟客户端
	*/
	conn, err := net.Dial("tcp", "127.0.0.1:7777")
	if err != nil {
		fmt.Println("client dial err:", err)
		return
	}
	// 创建一个封包对象
	dp := znet.NewDataPack()
	// 封装一个包
	// 封装一个msg1包
	msg1 := znet.Message{
		Id:      0,
		DataLen: 5,
		Data:    []byte{'h', 'e', 'l', 'l', 'o'},
	}
	senddata1, err := dp.Pack(&msg1)
	if err != nil {
		fmt.Println("client send err:", err)
		return
	}

	msg2 := znet.Message{
		Id:      1,
		DataLen: 7,
		Data:    []byte{'w', 'o', 'r', 'l', 'd', '!', '!'},
	}
	senddata2, err := dp.Pack(&msg2)
	if err != nil {
		fmt.Println("client send err:", err)
		return
	}
	// 将sendData1，和 sendData2 拼接一起，组成粘包
	senddata1 = append(senddata1, senddata2...)
	conn.Write(senddata1)
	select {}
}
